// pages/category/category.js
import { request } from "../../request/index.js"
import regeneratorRuntime from '../../lib/runtime/runtime';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    leftcategory: [],
    rightcategory: [],
    currentindex:0,
    scrollTop:0
  },
  // 接口返回的数据
  categorylist: [],
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //1. 获取本地数据
    const Cates=wx.getStorageSync('cates')
    //2. 判断是否有数据，没有数据的话就发送请求
    if(!Cates){
      // 没有数据，发请求
      this.getcategorylist()
    }else{
      // 有数据，看是否过期，如果过期，发送请求
      if(Date.now()-Cates.time>1000*100){
        this.getcategorylist()
      }else{
        // 使用旧数据
         console.log("使用旧数据");
        this.categorylist=Cates.data
        // 构造左侧数据
        let leftcategory=this.categorylist.map(v=>v.cat_name)
        // 构造右侧数据
        let rightcategory=this.categorylist[0].children
        this.setData({
          leftcategory,
          rightcategory
        })
      }
    }
       
  },
  // 获取分类数据
  getcategorylist() {
    request({
      url: "/categories"
    }).then((result) => {
      this.categorylist=result.data.message
      // 本地存储没有你就给存进去，时间和数据
      wx.setStorageSync('cates', {time:Date.now(),data: this.categorylist})
      
    })
  },
// 给左侧菜单添加单击事件
handleitem(e){
  // 1. 获取点击的索引值
  // 2. 把索引值赋值给currentindex
  // 3. 重新构造右侧的值
  const {index}=e.currentTarget.dataset
  // 构造右侧数据
  let rightcategory=this.categorylist[index].children
  this.setData({
    currentindex:index,
     rightcategory,
    //  获取到右边数据时，距离顶部位置为0
    scrollTop:0
  })
 
}
})